﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        public static double getCM_Distance(double max_distanceInCm, double maxDisctanceFromFloorInCm,  double distanceFromFloor)
        {
            double ret_one_cm_distance = -1;
            if (distanceFromFloor > 0)
            {
                ret_one_cm_distance = (max_distanceInCm / distanceFromFloor) * maxDisctanceFromFloorInCm;
            }
            return ret_one_cm_distance;
        }
        static void Main(string[] args)
        {
            // maximális távolság a földtől - referencia pont
            // legyen 40 cm, 5,2 pixel = 1 cm méréssel
            

            // maximális referencia távolság
            double max_ref_distanceFromFloor = 40;
            // maximális referencia ponti 1cm-re jutó pixelszám
            double[] Pixels = new double[] {5.2, 7.5, 10.1, 15.3, 24.2, 44.2, 93.7};//40-10cm-es távokban 

            double max_ref_distanceFromFloor_InPixel = Pixels[4];
            // a kamera aktuális magassága
            double currentCameraDistanceFromFloor = 20; //másik függvény bejövő paramétere lesz
            double[] Distances = new double[] { 40, 35, 30, 25, 20, 15, 10};//40-10cm

            // eredmény
            double pixel = getCM_Distance(max_ref_distanceFromFloor, max_ref_distanceFromFloor_InPixel, currentCameraDistanceFromFloor);

            Console.WriteLine("Távolság a talajtól: " + currentCameraDistanceFromFloor.ToString() +" 1 cm = "+pixel.ToString());
            Console.ReadKey();
        }
    }
}
